The present invention relates to systems and methods for creating calendar entries in client devices. More particularly, the present invention relates to systems and methods for facilitating the creation of at least a calendar entry in at least one recipient's client device according to a calendar message sent from the message originator's client device.
Presently, there are various calendar applications suitable for various operating systems utilized by various client devices. For example, there are the Outlook® calendar application for the Windows® operating system, the Entourage® calendar application for the Mac OS® operating system, the iCal® calendar application for the Mac OS® operating system, etc. Windows®, Outlook®, and Entourage® are available from Microsoft Corporation, www.microsoft.com. Mac OS® and iCal® are available from Apple Inc., www.apple.com.
Different calendar applications may be compatible with different protocols, such as different communication protocols and different calendar message protocols, for transporting calendar messages. For example, Outlook® is compatible with IMAP (Internet Message Access Protocol) and iMIP (iCalendar Message-Based Interoperability Protocol), Entourage® is compatible with the WebDAV (Web-based Distributed Authoring and Versioning) protocol and iMIP, and iCal® is compatible with the CalDAV (Calendaring Extensions to WebDAV) protocol and iTIP (iCalendar Transport-Independent Interoperability Protocol). Differences in protocols may result in incompatibility between calendar applications and calendar messages (or interoperability problems between calendar applications).
In general, a user of a client device may create and access calendar entries in the client device utilizing the calendar application implemented on the client device. The user may also send a calendar message to another user, i.e., a recipient of the calendar message, for a calendar entry to be created in the recipient's client device. For example, the calendar message may include a notice concerning an event, such as a meeting, an appointment request, or a party invitation. If the calendar message, when received by the recipient's client device, is in a format compatible with the calendar application implemented on the recipient's client device, the event notice may be correctly displayed by the recipient's calendar application, and a calendar entry (which specifies one or more of the time, the location, the attendees, etc. pertaining to the event) may be correctly created in the recipient's client device by the recipient's calendar application. However, if the recipient's calendar application is incompatible with the calendar message, the recipient's calendar application may not be able to correctly create a calendar entry according to the calendar message.
Prior art techniques may be unable to effectively resolve the incompatibility or interoperability problems. One of the reasons is that prior art techniques may utilize complicated identifiers for identifying calendar message originators and recipients. As an example, the originator identifier in a prior art calendar message may be a complicated directory path or address, for example, in the format of “http://servername/principals/users/bill”. The information contained in the prior art originator identifier may not be efficiently and effectively resolved by the recipient's calendar application and/or the communication server device associated with the recipient's client device. As a result, the recipient's calendar application may not be able to effectively create a calendar entry based on the calendar message.
In addition, prior art techniques may not provide desirable reliability and efficiency in generating and/or transporting calendar messages. For example, accordingly to prior art arrangements, identifiers for calendar message originators and recipients may need to be retrieved from a LDAP (Lightweight Directory Access Protocol) server that is external to the communication server device responsible for transporting calendar messages. When the LDAP server is busy or not responding, the identifiers may be unavailable. Consequently, calendar messages may not be timely generated, and/or the delivery of calendar messages may be delayed.